home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 2: CDPD 1
/
Almathera Ten on Ten - Disc 2: CDPD 1.iso
/
pd
/
076-100
/
084
/
audiotools
/
globals.c
< prev
next >
Wrap
C/C++ Source or Header
|
1995-03-13
|
2KB
|
45 lines
/* globals.c */
struct IOAudio openIOB; /* IOB to open and close the device */
struct MsgPort *auReplyPort; /* temporary pointer */
struct MsgPort *controlPort; /* Port for ControlChannel functions */
char *globalname = "global"; /* the name for global IOB's */
char *dynamicname = "dynamic"; /* the name for dynamic IOB's */
UBYTE stereostuff[4] = { 3, 5, 10, 12 }; /* channel masks for stereo */
UBYTE anychan[4] = { 1, 2, 4, 8 }; /* channel masks for mono */
/* Resolve all externals */
struct ExtIOB audbuffer[AUDBUFFERS]; /* globals to build-in */
UBYTE *chipaudio[4]; /* pointers to waveforms in CHIP RAM */
struct Unit *unit[4]; /* global pointers to Units */
struct Device *device; /* global pointer to audio device */
LONG datalength[4]; /* length of the data for a wave */
struct MsgPort *replyPort[4]; /* one ReplyPort per channel */
BYTE inuse[AUDBUFFERS]; /* keep track of globals in-use */
WORD key[4]; /* global value for alloc keys */
struct Unit *gotunit; /* returned unit value */
WORD gotkey; /* returned allocation key */
LONG dynamix[4]; /* counters for how many
* dynamically allocated audio
* message I/O blocks
*/
/* Each waveform buffer contains 8 octaves of the wave.
* The offset values specify where in the buffer the
* proper waveform table for that octave begins.
*/
int woffsets[] = { 0, 256, 384, 448, 480, 496, 504, 508, 510 };
/* Length of each waveform within a buffer */
int wlen[] = { 256, 128, 64, 32, 16, 8, 4, 2, 1 };
/* Period value to go with particular notes within an octave. */
int perval[] = { 428, 404, 381, 360, 339, 320,
302, 285, 269, 254, 240, 226, 214 };
UBYTE *w1, *w2, *w3;
BYTE *owptr[4] = { NULL, NULL, NULL, NULL };